package com.lw.entity;

import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.Table;
import java.io.Serializable;
import java.time.LocalDateTime;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 *  实体类。
 *
 * @author lw
 * @since 2025年04月29日 19:24:27
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Schema(name = "节点管理")
@Table("tb_node")
public class TbNode implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id
    @Schema(description = "")
    private Integer id;

    /**
     * 节点名称
     */
    @Schema(description = "节点名称")
    private String name;

    /**
     * 节点编码
     */
    @Schema(description = "节点编码")
    private String code;

    /**
     * 节点类型
     */
    @Schema(description = "节点类型")
    private String type;

    /**
     * 节点地址
     */
    @Schema(description = "节点地址")
    private String address;

    /**
     * 节点ip
     */
    @Schema(description = "节点ip")
    private String ip;

    /**
     * 告警次数
     */
    @Schema(description = "告警次数")
    private String userCount;

    /**
     * 服务状态 success：服务中，danger：告警
     */
    @Schema(description = "服务状态 success：服务中，danger：告警")
    private String status;

    /**
     * 服务描述
     */
    @Schema(description = "服务描述")
    private String serviceDesc;

    /**
     * 内容
     */
    @Schema(description = "内容")
    private String content;

    /**
     * 硬盘描述
     */
    @Schema(description = "硬盘描述")
    private String hardDesc;

    /**
     * 磁盘共
     */
    @Schema(description = "磁盘总共 单位GB")
    private String diskTotal;

    /**
     * 磁盘剩余
     */
    @Schema(description = "磁盘剩余 单位：GB")
    private String diskFree;

    /**
     * 流量 单位：KB
     */
    @Schema(description = "流量 单位：KB")
    private Double traffic;

    @Schema(description = "")
    private LocalDateTime createTime;

    @Schema(description = "")
    private LocalDateTime updateTime;

}
